/**
 * Copyright &copy; 2015-2020 <a href="http://www.easyhis.com/">easyhis</a> All rights reserved.
 */
package com.easy.dfcapi.entity;

import com.easy.common.utils.excel.annotation.ExcelField;
import com.easy.core.persistence.BaseEntity;
import com.fasterxml.jackson.annotation.JsonFormat;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 商城活动对参加商品的限制Entity
 * @author waylen chi
 * @version 2018-01-11
 */
public class ApiActivityPlimit extends BaseEntity<ApiActivityPlimit> {
	
	private static final long serialVersionUID = 1L;
	private String id;		// UUID
	private Integer limitId;		// ID,自增
	private Integer activityId;		// 活动ID，外键dfc_activity的activity_id
	private String allowed;		// 1允许 0禁止
	private Integer cateId;		// 类别ID，外键dfc_cateoryt的cate_id
	private String createDateLogic1;		// 对商品发布时间的逻辑 比如
	private Date createDateValue1;		// 商品发布时间1
	private String createDateLogic2;		// 对商品发布时间的逻辑,比如 											</td>											<td>												<span  name=
	private Date createDateValue2;		// 商品发布时间2
	private String priceLogic1;		// 对商品价格的逻辑,比如 
	private BigDecimal priceValue1;		// 商品价格1
	private String priceLogic2;		// 对商品价格的逻辑,比如 											</td>											<td>												<span  name=
	private BigDecimal priceValue2;		// 商品价格2
	private String discLogic1;		// 对商品折扣的逻辑1
	private BigDecimal discValue1;		// 商品折扣1
	private String discLogic2;		// 对商品折扣的逻辑2
	private BigDecimal discValue2;		// 商品折扣2
	private String stockLogic1;		// 对商品库存量的逻辑1
	private BigDecimal stockValue1;		// 商品库存量1
	private String stockLogic2;		// 对商品库存量的逻辑2
	private BigDecimal stockValue2;		// 商品库存量1
	private String salesNumLogic1;		// 对商品销售量的逻辑1
	private BigDecimal saleNumValue1;		// 商品销售数量1
	private String salesNumLogic2;		// 对商品销售量的逻辑2
	private BigDecimal saleNumValue2;		// 商品销售数量2
	private String salesAmntLogic1;		// 对商品销售额的逻辑1
	private BigDecimal salesAmntValue1;		// 商品销售金额1
	private String salesAmntLogic2;		// 对商品销售额的逻辑2
	private BigDecimal saleAmntValue2;		// 商品销售金额2
	private Integer verifyDays;		// 有效期
	private Integer punishLevel;		// 处罚级别
	private String isMust;		// 1-必须满足所有条件(与)，0-只要满足其中一条(或)
	
	public ApiActivityPlimit() {
		super();
	}

	public ApiActivityPlimit(String id){
		this.id = id;
	}

	@NotNull(message="ID,自增不能为空")
	@ExcelField(title="ID,自增", align=2, sort=0)
	public Integer getLimitId() {
		return limitId;
	}

	public void setLimitId(Integer limitId) {
		this.limitId = limitId;
	}
	
	@ExcelField(title="活动ID，外键dfc_activity的activity_id", align=2, sort=1)
	public Integer getActivityId() {
		return activityId;
	}

	public void setActivityId(Integer activityId) {
		this.activityId = activityId;
	}
	
	@ExcelField(title="1允许 0禁止", align=2, sort=2)
	public String getAllowed() {
		return allowed;
	}

	public void setAllowed(String allowed) {
		this.allowed = allowed;
	}
	
	@ExcelField(title="类别ID，外键dfc_cateoryt的cate_id", align=2, sort=3)
	public Integer getCateId() {
		return cateId;
	}

	public void setCateId(Integer cateId) {
		this.cateId = cateId;
	}
	
	@ExcelField(title="对商品发布时间的逻辑 比如", align=2, sort=4)
	public String getCreateDateLogic1() {
		return createDateLogic1;
	}

	public void setCreateDateLogic1(String createDateLogic1) {
		this.createDateLogic1 = createDateLogic1;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="商品发布时间1", align=2, sort=5)
	public Date getCreateDateValue1() {
		return createDateValue1;
	}

	public void setCreateDateValue1(Date createDateValue1) {
		this.createDateValue1 = createDateValue1;
	}
	
	@ExcelField(title="对商品发布时间的逻辑,比如 											</td>											<td>												<span  name=", align=2, sort=6)
	public String getCreateDateLogic2() {
		return createDateLogic2;
	}

	public void setCreateDateLogic2(String createDateLogic2) {
		this.createDateLogic2 = createDateLogic2;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="商品发布时间2", align=2, sort=7)
	public Date getCreateDateValue2() {
		return createDateValue2;
	}

	public void setCreateDateValue2(Date createDateValue2) {
		this.createDateValue2 = createDateValue2;
	}
	
	@ExcelField(title="对商品价格的逻辑,比如 ", align=2, sort=8)
	public String getPriceLogic1() {
		return priceLogic1;
	}

	public void setPriceLogic1(String priceLogic1) {
		this.priceLogic1 = priceLogic1;
	}
	
	@ExcelField(title="商品价格1", align=2, sort=9)
	public BigDecimal getPriceValue1() {
		return priceValue1;
	}

	public void setPriceValue1(BigDecimal priceValue1) {
		this.priceValue1 = priceValue1;
	}
	
	@ExcelField(title="对商品价格的逻辑,比如 											</td>											<td>												<span  name=", align=2, sort=10)
	public String getPriceLogic2() {
		return priceLogic2;
	}

	public void setPriceLogic2(String priceLogic2) {
		this.priceLogic2 = priceLogic2;
	}
	
	@ExcelField(title="商品价格2", align=2, sort=11)
	public BigDecimal getPriceValue2() {
		return priceValue2;
	}

	public void setPriceValue2(BigDecimal priceValue2) {
		this.priceValue2 = priceValue2;
	}
	
	@ExcelField(title="对商品折扣的逻辑1", align=2, sort=12)
	public String getDiscLogic1() {
		return discLogic1;
	}

	public void setDiscLogic1(String discLogic1) {
		this.discLogic1 = discLogic1;
	}
	
	@ExcelField(title="商品折扣1", align=2, sort=13)
	public BigDecimal getDiscValue1() {
		return discValue1;
	}

	public void setDiscValue1(BigDecimal discValue1) {
		this.discValue1 = discValue1;
	}
	
	@ExcelField(title="对商品折扣的逻辑2", align=2, sort=14)
	public String getDiscLogic2() {
		return discLogic2;
	}

	public void setDiscLogic2(String discLogic2) {
		this.discLogic2 = discLogic2;
	}
	
	@ExcelField(title="商品折扣2", align=2, sort=15)
	public BigDecimal getDiscValue2() {
		return discValue2;
	}

	public void setDiscValue2(BigDecimal discValue2) {
		this.discValue2 = discValue2;
	}
	
	@ExcelField(title="对商品库存量的逻辑1", align=2, sort=16)
	public String getStockLogic1() {
		return stockLogic1;
	}

	public void setStockLogic1(String stockLogic1) {
		this.stockLogic1 = stockLogic1;
	}
	
	@ExcelField(title="商品库存量1", align=2, sort=17)
	public BigDecimal getStockValue1() {
		return stockValue1;
	}

	public void setStockValue1(BigDecimal stockValue1) {
		this.stockValue1 = stockValue1;
	}
	
	@ExcelField(title="对商品库存量的逻辑2", align=2, sort=18)
	public String getStockLogic2() {
		return stockLogic2;
	}

	public void setStockLogic2(String stockLogic2) {
		this.stockLogic2 = stockLogic2;
	}
	
	@ExcelField(title="商品库存量1", align=2, sort=19)
	public BigDecimal getStockValue2() {
		return stockValue2;
	}

	public void setStockValue2(BigDecimal stockValue2) {
		this.stockValue2 = stockValue2;
	}
	
	@ExcelField(title="对商品销售量的逻辑1", align=2, sort=20)
	public String getSalesNumLogic1() {
		return salesNumLogic1;
	}

	public void setSalesNumLogic1(String salesNumLogic1) {
		this.salesNumLogic1 = salesNumLogic1;
	}
	
	@ExcelField(title="商品销售数量1", align=2, sort=21)
	public BigDecimal getSaleNumValue1() {
		return saleNumValue1;
	}

	public void setSaleNumValue1(BigDecimal saleNumValue1) {
		this.saleNumValue1 = saleNumValue1;
	}
	
	@ExcelField(title="对商品销售量的逻辑2", align=2, sort=22)
	public String getSalesNumLogic2() {
		return salesNumLogic2;
	}

	public void setSalesNumLogic2(String salesNumLogic2) {
		this.salesNumLogic2 = salesNumLogic2;
	}
	
	@ExcelField(title="商品销售数量2", align=2, sort=23)
	public BigDecimal getSaleNumValue2() {
		return saleNumValue2;
	}

	public void setSaleNumValue2(BigDecimal saleNumValue2) {
		this.saleNumValue2 = saleNumValue2;
	}
	
	@ExcelField(title="对商品销售额的逻辑1", align=2, sort=24)
	public String getSalesAmntLogic1() {
		return salesAmntLogic1;
	}

	public void setSalesAmntLogic1(String salesAmntLogic1) {
		this.salesAmntLogic1 = salesAmntLogic1;
	}
	
	@ExcelField(title="商品销售金额1", align=2, sort=25)
	public BigDecimal getSalesAmntValue1() {
		return salesAmntValue1;
	}

	public void setSalesAmntValue1(BigDecimal salesAmntValue1) {
		this.salesAmntValue1 = salesAmntValue1;
	}
	
	@ExcelField(title="对商品销售额的逻辑2", align=2, sort=26)
	public String getSalesAmntLogic2() {
		return salesAmntLogic2;
	}

	public void setSalesAmntLogic2(String salesAmntLogic2) {
		this.salesAmntLogic2 = salesAmntLogic2;
	}
	
	@ExcelField(title="商品销售金额2", align=2, sort=27)
	public BigDecimal getSaleAmntValue2() {
		return saleAmntValue2;
	}

	public void setSaleAmntValue2(BigDecimal saleAmntValue2) {
		this.saleAmntValue2 = saleAmntValue2;
	}
	
	@NotNull(message="有效期不能为空")
	@ExcelField(title="有效期", align=2, sort=28)
	public Integer getVerifyDays() {
		return verifyDays;
	}

	public void setVerifyDays(Integer verifyDays) {
		this.verifyDays = verifyDays;
	}
	
	@ExcelField(title="处罚级别", align=2, sort=29)
	public Integer getPunishLevel() {
		return punishLevel;
	}

	public void setPunishLevel(Integer punishLevel) {
		this.punishLevel = punishLevel;
	}
	
	@ExcelField(title="1-必须满足所有条件(与)，0-只要满足其中一条(或)", align=2, sort=30)
	public String getIsMust() {
		return isMust;
	}

	public void setIsMust(String isMust) {
		this.isMust = isMust;
	}
	
}